/**
 * Copyright &copy; 2012-2014 <a href="https://github.com/thinkgem/jeesite">JeeSite</a> All rights reserved.
 */
package com.thinkgem.jeesite.modules.warehouse.entity;

import org.hibernate.validator.constraints.Length;
import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.thinkgem.jeesite.modules.sys.entity.Office;

import com.thinkgem.jeesite.common.persistence.DataEntity;
import com.thinkgem.jeesite.common.utils.excel.annotation.ExcelField;

/**
 * MaterialReportEntity
 * 
 * @author arg
 * @version 2017-03-30
 */
public class MaterialReport extends DataEntity<MaterialReport> {

	private static final long serialVersionUID = 1L;
	private String materialname; // materialname
	private Double price; // price
	private String currency; // currency
	private String unit; // unit
	private String stock; // stock
	private String standard; // standard
	private String standardunit; // standardunit
	private String inOut; // in_out
	private Double amount; // amount
	private Date inoutdate; // inoutdate
	private Double totalqty; // totalqty
	private Office office; // office_id

	private Date beginDate; // 开始日期
	private Date endDate; // 结束日期

	public MaterialReport() {
		super();
	}

	public MaterialReport(String id) {
		super(id);
	}

	@Length(min = 0, max = 300, message = "materialname长度必须介于 0 和 300 之间")
	@ExcelField(title = "Material", align = 0, sort = 10)
	public String getMaterialname() {
		return materialname;
	}

	public void setMaterialname(String materialname) {
		this.materialname = materialname;
	}

	@ExcelField(title = "Price", align = 0, sort = 20)
	public Double getPrice() {
		return price;
	}

	public void setPrice(Double price) {
		this.price = price;
	}

	@Length(min = 0, max = 60, message = "currency长度必须介于 0 和 60 之间")
	@ExcelField(title = "Currency", align = 0, sort = 30)
	public String getCurrency() {
		return currency;
	}

	public void setCurrency(String currency) {
		this.currency = currency;
	}

	@Length(min = 0, max = 60, message = "unit长度必须介于 0 和 60 之间")
	@ExcelField(title = "Unit", align = 0, sort = 50)
	public String getUnit() {
		return unit;
	}

	public void setUnit(String unit) {
		this.unit = unit;
	}

	public String getStock() {
		return stock;
	}

	public void setStock(String stock) {
		this.stock = stock;
	}

	public String getStandard() {
		return standard;
	}
	@ExcelField(title = "Standard", align = 0, sort = 80)
	public void setStandard(String standard) {
		this.standard = standard;
	}

	@Length(min = 0, max = 60, message = "standardunit长度必须介于 0 和 60 之间")
	public String getStandardunit() {
		return standardunit;
	}

	public void setStandardunit(String standardunit) {
		this.standardunit = standardunit;
	}

	@Length(min = 0, max = 100, message = "in_out长度必须介于 0 和 100 之间")
	@ExcelField(title = "InOut", align = 0, sort = 90)
	public String getInOut() {
		return inOut;
	}

	public void setInOut(String inOut) {
		this.inOut = inOut;
	}

	@ExcelField(title = "Amount", align = 0, sort = 70)
	public Double getAmount() {
		return amount;
	}

	public void setAmount(Double amount) {
		this.amount = amount;
	}

	@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
	public Date getInoutdate() {
		return inoutdate;
	}

	public void setInoutdate(Date inoutdate) {
		this.inoutdate = inoutdate;
	}

	@ExcelField(title = "TotalQty", align = 0, sort = 50)
	public Double getTotalqty() {
		return totalqty;
	}

	public void setTotalqty(Double totalqty) {
		this.totalqty = totalqty;
	}

	@ExcelField(title = "Office", align = 0, sort = 100)
	public Office getOffice() {
		return office;
	}

	public void setOffice(Office office) {
		this.office = office;
	}

	public Date getBeginDate() {
		return beginDate;
	}

	public void setBeginDate(Date beginDate) {
		this.beginDate = beginDate;
	}

	public Date getEndDate() {
		return endDate;
	}

	public void setEndDate(Date endDate) {
		this.endDate = endDate;
	}

}